	.arch armv8-a
	.arch_extension crc
	.arm
	.text
	.global main
	.type main , %function
main:
	push {r4, r5, r6, r7, r8, r10, fp, lr}
	mov fp, sp
	sub sp, sp, #68
.L63:
	ldr r10, =0
	str r10, [fp, #-64]
	ldr r4, =0
	str r4, [fp, #-68]
	b .L67
.L67:
	ldr r4, [fp, #-68]
	cmp r4, #0
	cmp r4, #10
	movlt r4, #1
	movgt r4, #0
	blt .L68
	b .L76
.L68:
	ldr r4, [fp, #-68]
	ldr r5, =1
	add r6, r4, r5
	ldr r4, [fp, #-68]
	mov r5, #-60
	mov r8, #4
	mul r7, r4, r8
	add r4, r5, r7
	add r5, fp, r4
	str r6, [r5]
	ldr r4, [fp, #-68]
	ldr r5, =1
	add r6, r4, r5
	str r6, [fp, #-68]
	b .L67
.L69:
	ldr r4, =10
	str r4, [fp, #-4]
	bl getint
	mov r4, r0
	str r4, [fp, #-20]
	ldr r4, [fp, #-4]
	ldr r5, =1
	sub r6, r4, r5
	str r6, [fp, #-16]
	ldr r4, =0
	str r4, [fp, #-12]
	ldr r4, [fp, #-16]
	ldr r5, [fp, #-12]
	add r6, r4, r5
	ldr r4, =2
	sdiv r5, r6, r4
	str r5, [fp, #-8]
	b .L82
.L71:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L72:
	b .L71
.L76:
	b .L69
.L82:
	ldr r4, [fp, #-8]
	cmp r4, #0
	mov r5, #-60
	mov r6, #4
	mul r7, r4, r6
	add r4, r5, r7
	add r5, fp, r4
	ldr r4, [r5]
	ldr r5, [fp, #-20]
	cmp r5, #0
	cmp r4, r5
	bne .L85
	b .L97
.L83:
	ldr r4, [fp, #-16]
	ldr r5, [fp, #-12]
	add r6, r4, r5
	ldr r4, =2
	sdiv r5, r6, r4
	str r5, [fp, #-8]
	ldr r4, [fp, #-20]
	cmp r4, #0
	ldr r5, [fp, #-8]
	cmp r5, #0
	mov r6, #-60
	mov r7, #4
	mul r8, r5, r7
	add r5, r6, r8
	add r6, fp, r5
	ldr r5, [r6]
	cmp r4, r5
	movlt r4, #1
	movgt r4, #0
	blt .L109
	b .L123
.L84:
	ldr r4, [fp, #-20]
	cmp r4, #0
	ldr r5, [fp, #-8]
	cmp r5, #0
	mov r6, #-60
	mov r8, #4
	mul r7, r5, r8
	add r5, r6, r7
	add r6, fp, r5
	ldr r5, [r6]
	cmp r4, r5
	beq .L124
	b .L138
.L85:
	ldr r4, [fp, #-12]
	cmp r4, #0
	ldr r5, [fp, #-16]
	cmp r5, #0
	cmp r4, r5
	movlt r4, #1
	movgt r4, #0
	blt .L83
	b .L108
.L87:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L88:
	b .L87
.L92:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L93:
	b .L92
.L97:
	b .L84
.L99:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L100:
	b .L99
.L103:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L104:
	b .L103
.L108:
	b .L84
.L109:
	ldr r4, [fp, #-8]
	ldr r5, =1
	sub r6, r4, r5
	str r6, [fp, #-16]
	b .L110
.L110:
	b .L82
.L111:
	ldr r4, [fp, #-8]
	ldr r5, =1
	add r6, r4, r5
	str r6, [fp, #-12]
	b .L110
.L113:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L114:
	b .L113
.L117:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L118:
	b .L117
.L123:
	b .L111
.L124:
	ldr r4, [fp, #-20]
	mov r0, r4
	bl putint
	b .L125
.L125:
	ldr r4, =10
	str r4, [fp, #-20]
	ldr r4, [fp, #-20]
	mov r0, r4
	bl putch
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L126:
	ldr r4, =0
	str r4, [fp, #-20]
	ldr r4, [fp, #-20]
	mov r0, r4
	bl putint
	b .L125
	b .F0
.LTORG
.F0:
.L128:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L129:
	b .L128
.L132:
	mov r0, #0
	add sp, sp, #68
	pop {r4, r5, r6, r7, r8, r10, fp, lr}
	bx lr
.L133:
	b .L132
.L138:
	b .L126

